package com.itheima.web.response;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;

@WebServlet("/resp1")
public class ResponseDemo1 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        System.out.println("resp1......");

        //重定向
        /*//1.设置响应状态码 302
        response.setStatus(302);
        //2.设置响应头 Location
        response.setHeader("Location","resp2");
        //tomcat7以上的版本的高版本 可以直接写resp2，不用加斜杠/，不用写虚拟目录request-demno*/

        //简化方式完成重定向
//        response.sendRedirect("resp2");
        //简化版这个路径写 /request-demo/resp2 写 resp2（多一个斜杠都不行） 才可以重定向
        /* 可以在pom.xml中的<path></path>路径中配置路径为<path>reqest-demo</path>但是这样会降低项目的耦合性，所以最好能动态分配虚拟路径*/
        //动态获取虚拟路径
        String contextPath = request.getContextPath();
        response.sendRedirect(contextPath+"/resp2");

        //重定向到外部资源
//        response.sendRedirect("https://www.itcast.cn");

        //两个互相重定向会显示：“重定向次数过多，当前无法显示此页面”
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.doGet(request, response);
    }
}
